package org.activiti.DelegateTasks;

/**
 * Created with IntelliJ IDEA.
 * UserEntity: simnau
 * Date: 13.2.8
 * Time: 14.10
 * To change this template use File | Settings | File Templates.
 */
public enum RegularExpressions {
    FOR_AS("^.*[bcčdfghjklmnprsštvzž]as$", "o", "ą", "ui", "u", 2),
    FOR_US("^.*[bcčdfghijklmnprsštvzž]us$", "aus", "ų", "ui", "umi", 2),
    FOR_TIS("^.*tis$", "čio", "tį", "čiui", "čiu", 3),
    FOR_IYS("^.*[bcčfghklmnprsšvzž][iy]s$", "io", "į", "iui", "iu", 2),
    FOR_A(".*[bcčdfghjklmnprsštvzž]a$", "os", "ą", "ai", "a", 1),
    FOR_E("^.*[bcčdfghjklmnprsštvzž]ė$", "ės", "ę", "ei", "e", 1),
    FOR_DYS("^.*d[iy]s", "žio", "į", "žiui", "žiu", 2);

    private final String regexp;
    private final String genitiveEnding;
    private final String accusativeEnding;
    private final String dativeEnding;
    private final String instrumentalEnding;
    private final int charactersToSubtract;

    RegularExpressions(String regexp, String genitiveEnding,
                       String accusativeEnding, String dativeEnding,
                       String instrumentalEnding, int charactersToSubtract){
        this.regexp = regexp;
        this.genitiveEnding = genitiveEnding;
        this.accusativeEnding = accusativeEnding;
        this.dativeEnding = dativeEnding;
        this.instrumentalEnding = instrumentalEnding;
        this.charactersToSubtract = charactersToSubtract;
    }

    public String getRegexp(){
        return this.regexp;
    }

    public String getGenitiveEnding(){
        return this.genitiveEnding;
    }

    public String getAccusativeEnding() {
        return accusativeEnding;
    }

    public String getDativeEnding() {
        return dativeEnding;
    }

    public String getInstrumentalEnding() {
        return instrumentalEnding;
    }

    public int getCharactersToSubtract() {
        return charactersToSubtract;
    }
}
